using System.ComponentModel.DataAnnotations;

namespace Yuekao.Domain.Entitys
{
    /// <summary>
    /// 医院管理表
    /// </summary>
    public class Doctor
    {
        /// <summary>
        /// 主键Id
        /// </summary>
        [Key]
        public int DoctorId { get; set; }

        /// <summary>
        /// 医生姓名
        /// </summary>
        [StringLength(30)]
        public string DoctorName { get; set; } = string.Empty;

        /// <summary>
        /// 电话
        /// </summary>
        [StringLength(30)]
        public string Phone { get; set; } = string.Empty;

        /// <summary>
        /// 所属医院
        /// </summary>
        public int HospitalId { get; set; }

        /// <summary>
        /// 所属职称
        /// </summary>
        public int WorkId { get; set; }

        /// <summary>
        /// 所属科室
        /// </summary>
        public int OfficeId { get; set; }

        /// <summary>
        /// 加入时间
        /// </summary>
        public DateTime JoinTime { get; set; } = DateTime.Now;

        /// <summary>
        /// 审核状态
        /// </summary>
        public int AuditStatus { get; set; }

        /// <summary>
        /// 服务审核
        /// </summary>
        public int ServiceStatus { get; set; }

        /// <summary>
        /// 患者评价
        /// </summary>
        [StringLength(30)]
        public string PatientReview { get; set; } = string.Empty;

        /// <summary>
        /// 粉丝
        /// </summary>
        [StringLength(30)]
        public string Follower { get; set; } = string.Empty;

        /// <summary>
        /// 删除键
        /// </summary>
        public bool IsDel { get; set; } = false;

        /// <summary>
        /// 导航属性 - 院区
        /// </summary>
        public virtual Hospital Hospital { get; set; } = null!;

        /// <summary>
        /// 导航属性 - 职称
        /// </summary>
        public virtual Work Work { get; set; } = null!;

        /// <summary>
        /// 导航属性 - 科室
        /// </summary>
        public virtual Office Office { get; set; } = null!;

        /// <summary>
        /// 导航属性 - 医生详情
        /// </summary>
        public virtual DoctorDetails DoctorDetails { get; set; } = null!;
    }
} 